From 224a8c2804847865e95c4cef75754dab50cc790c Mon Sep 17 00:00:00 2001 From: "cl349@firebug.cl.cam.ac.uk" Date: Wed, 18 May 2005 15:33:54 +0000 Subject: [PATCH] bitkeeper revision 1.1452 (428b6062g_unu25_ly_M7YUuHKn8Wg) XendDomain.py: Bring back refresh() calls but only run the code cleanup parts of refresh when necessary. Signed-off-by: Christian Limpach --- tools/python/xen/xend/XendDomain.py | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/tools/python/xen/xend/XendDomain.py b/tools/python/xen/xend/XendDomain.py index 3140584884..2d049c31d4 100644 --- a/tools/python/xen/xend/XendDomain.py +++ b/tools/python/xen/xend/XendDomain.py @@ -109,7 +109,7 @@ class XendDomain: """Event handler for virq. """ print 'onVirq>', val - self.refresh() + self.refresh(cleanup=True) def rm_all(self): """Remove all domain info. Used after reboot. @@ -154,7 +154,7 @@ class XendDomain: self._delete_domain(domid) else: self._delete_domain(domid) - self.refresh() + self.refresh(cleanup=True) def sync(self): """Sync domain db to disk. @@ -274,10 +274,11 @@ class XendDomain: destroyed += 1 self.final_domain_destroy(id) - def refresh(self): + def refresh(self, cleanup=False): """Refresh domain list from Xen. """ - self.reap() + if cleanup: + self.reap() doms = self.xen_domains() # Add entries for any domains we don't know about. for (id, d) in doms.items(): @@ -294,7 +295,7 @@ class XendDomain: do_domain_restarts = True else: self._delete_domain(d.id) - if do_domain_restarts: + if cleanup and do_domain_restarts: self.scheduler.now(self.domain_restarts) def update_domain(self, id): @@ -325,6 +326,7 @@ class XendDomain: @return: domain names """ + self.refresh() return self.domain_by_name.keys() def domain_ls_ids(self): @@ -332,6 +334,7 @@ class XendDomain: @return: domain names """ + self.refresh() return self.domain_by_id.keys() def domains(self): @@ -339,6 +342,7 @@ class XendDomain: @return: domain objects """ + self.refresh() return self.domain_by_id.values() def domain_create(self, config): -- 2.30.2